Field of the Invention
The present invention relates generally to communication networks and more particularly to systems and methods for increased data throughput over communication networks, such as wireless networks.
Description of the Related Art
A reference model can conveniently represent communication between networked devices. FIG. 1 illustrates a correlation between layers of the Open Systems Interconnection (OSI) Reference Model and the Department of Defense (DoD) Reference Model, according to the prior art. The Department of Defense Model (DoD) model and the Open Systems Interconnection (OSI) model are two standardized reference models which are well known to those skilled in the art.
These reference models represent communications as processes which occur in a hierarchy of higher and lower layer protocols. In general, each layer communicates with a higher layer protocol and a lower layer protocol. As indicated by FIG. 1, the DoD model includes four layers, a network access layer, an internet layer, a host-to-host transport layer (the transport layer), and an applications layer.
FIG. 2 illustrates physical and virtual data flow at the various layers in the DoD Reference Model during communication between two network devices, according to the prior art. Each layer in a first network device communicates with the corresponding layer in a second network device. The communication between layers is represented by dashed lines, the embedding of information in successive lower layer protocols at the first network device is represented by downward arrows between layers, and the un-packaging of information by successive higher layer protocols at the second network device is represented by upward arrows between layers.
For instance, the communication between the network devices in the transport layer (i.e., the higher layer protocol) is embedded into a communication in the internet layer (i.e., the lower layer protocol for the transport layer protocol) of each device. Physical data transfer is ultimately made at the lowest layer protocol in the hierarchy of the reference model. In the DoD network reference model, the lowest layer protocol is the network access layer.
The network access layer comprises media access control services and protocols (which attach physical source and destination addresses, e.g., Ethernet addresses, and control protocols), and the physical medium, for example, copper cables or RF specifications such as the type of modulation. To achieve compatibility and interoperability of equipment manufactured by various different vendors, communication networks often rely on standard specifications for the network access layer. In one example, in 1997, the Institute of Electrical and Electronics Engineers (IEEE) 802 Group established the 802.11 wireless standard specifying media access (MAC) services, protocols, and an RF physical layer for wireless communication. This protocol is now in widespread use for wireless networks. For example, in an IEEE 802.11 network, an access point (e.g., a base station) communicates data with a remote receiving node (e.g., a mobile station such as a laptop computer configured with a network interface card) over a wireless link such as a radio frequency (RF) baseband wireless link.
Generally, wireless transmissions tend to be more susceptible to data losses than other forms of data transmission. Wireless transmission can be unreliable because of problems such as interference, signal attenuation, and multi-path reflections of radio signals. For example, 802.11b and 802.11g wireless local area networks (LANs) communicate by way of a 2.45 GHz frequency band which often has interfering radiation from mobile phones, microwave ovens and other 802.11 networks. To address this problem, the 802.11 specification comprises mechanisms to enable reliable communication despite the presence of interference.
In the present context, a transmission protocol is “reliable” if the protocol provides for verification that the receiving node received the data. One mechanism by which an 802.11 wireless access point provides reliable communication with an associated receiving node is with 802.11 acknowledgments (ACKs). A unicast 802.11 packet is acknowledged by the receiving node via an 802.11 ACK following a successful reception. If the access point does not detect the 802.11 ACK within a set period of time, the unicast 802.11 packet is presumed to have been lost and is therefore retransmitted by the access point. However, by implementing a reliable lower layer protocol, the transmission of 802.11 ACKs limits data transmission rates over communication networks because for successfully received unicast 802.11 packets, the 802.11 ACKs are transmitted in return.
A higher layer protocol that implements reliable transmission potentially further limits the data transmission rates when implemented on a communication network that provides a reliable lower layer protocol, such as the wireless network. For example, the transport layer of the DoD reference module typically includes reliable connection oriented protocols, such as TCP, for the exchange of data between a sender and a receiver. TCP assures reliable delivery of data services between the sender and the receiver (i.e., the source and destination) using several mechanisms. After a predefined amount of data is transmitted from the sender to the receiver, the sender must wait for a TCP acknowledgment (ACK) in the transport layer back from the receiver to confirm that the data was received. The sender is not allowed to transmit additional data until it receives this ACK, and if the sender does not receive the ACK within a predetermined time, it must retransmit the data.
FIG. 3 illustrates transmission of TCP and 802.11 acknowledgments for TCP data 350 transmitted from a source 310 to a receiving node 330, according to the prior art. The source node 310 transmits the TCP data 350 to an access point 320 over a wired network 300. The access point 320 then transmits the TCP data 350 (e.g., encapsulated in an 802.11 packet) over a wireless link 340 to the receiving node 330. If the receiving node 330 successfully receives the TCP data 350, the receiving node 330 transmits an 802.11 ACK 360 to the access point 320.
The receiving node 330 then transmits a TCP ACK 370 to the source 310 through the access point 320. The access point 320 acknowledges receipt of the TCP ACK 370 by another 802.11 ACK 380. The access point 320 finally transmits the TCP ACK 370 to the source 310.
Therefore, the TCP ACKs (e.g., the TCP ACK 370) are particularly burdensome in the 802.11 wireless LAN because multiple acknowledgments, (i.e., TCP ACKs and 802.11 ACKs) are sent to acknowledge receipt of the same communication (i.e., the TCP data 350). A wireless network, such as an IEEE 802.11 network, may provide a relatively high maximum physical data rate, for example 54 Mbps. However, because TCP packet headers and other protocol content is transmitted over the wireless link along with application layer data, in practice, the TCP data transfer rate corresponding to a 54 Mbps rate of physical transmission between physical IEEE 802.11g network devices is only about 24 Mbps. Hence, protocol overhead comprises about 50% of the application layer data rate.
Additionally, data transmission between a TCP source and a TCP destination is often unidirectional. For example, applications such as web browsers commonly receive large amounts of data from a remote website while sending little or no data back to the site. Accordingly, the TCP data transmission is often unidirectional over short intervals, and the TCP ACKs from the receiver to the sender typically carry no TCP data.
One limitation is that the protocol overhead for sending the TCP ACKs from the receiver to the sender burdens the physical communication channel when there is no actual TCP data being transferred from the receiver to the sender. Furthermore, much of this overhead is typically repeated for each TCP ACK. As a result, much of the time used to send 802.11 data packets is taken up with sending encapsulated TCP ACKs that have no accompanying TCP data and accompanying 802.11 ACKs. The multiple TCP ACKs and 802.11 ACKs increase network traffic over the communication network and limit bandwidth for the transfer of the data.